x86/AMD: use correct shift count when merging model and stepping
authorJan Beulich <jbeulich@suse.com>
Thu, 15 Dec 2011 13:28:45 +0000 (14:28 +0100)
committerJan Beulich <jbeulich@suse.com>
Thu, 15 Dec 2011 13:28:45 +0000 (14:28 +0100)
... for legacy errata matching.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
xen/arch/x86/cpu/amd.c

index 3750c7a9deb7aa399ed75553f169ff3754aef669..33b8912297151c0e03f49cbeb068e49553647e90 100644 (file)
@@ -216,7 +216,7 @@ int cpu_has_amd_erratum(const struct cpuinfo_x86 *cpu, int osvw, ...)
        }
 
        /* OSVW unavailable or ID unknown, match family-model-stepping range */
-       ms = (cpu->x86_model << 8) | cpu->x86_mask;
+       ms = (cpu->x86_model << 4) | cpu->x86_mask;
        while ((range = va_arg(ap, int))) {
                if ((cpu->x86 == AMD_MODEL_RANGE_FAMILY(range)) &&
                    (ms >= AMD_MODEL_RANGE_START(range)) &&